查看原文
其他

机器学习:不得不知的概念(1)

2017-11-07 alg-flody 算法channel

作者:alg-flody

编辑:Emily

请点击上面公众号,免费订阅。 

主要推送关于对算法的思考以及应用的消息。培养思维能力,注重过程,挖掘背后的原理,刨根问底。本着严谨和准确的态度,目标是撰写实用和启发性的文章,欢迎您的关注。


人工智能将是谷歌的最终版本。它将成为终极搜索引擎,可以理解网络上的一切信息。它会准确地理解你想要什么,给你需要的东西。我们现在还远远没有做到这一点。然而,我们能够逐渐接近,我们目前正在为此努力。

                                                                                Google CEO 拉里·佩奇





01

你会学到什么?

接下来,在这个系列总您将会学到机器学习中非常重要的基本的概念,机器学习模型好坏的重要衡量指标,和机器学习中非常重要的一个概念:归纳偏好,它避免使我们掉入浩瀚的假设空间中。




02

不得不知

要想精确地入门机器学习,有一些概念,是我们得准确掌握的,这通常是第一步,走好这一步能为未来构建机器学习大厦打下坚实的地基,同时为你理解基于这些概念的理论和算法提供必不可少的帮助。


那么我们来看一下,这些基本概念吧!


数据集(data set)

记录的集合,假如我们用3个特征,分别为色泽,根蒂,响声来描述西瓜的特点,并且拿到了基于这3个特征的10万条记录,其中一条记录的取值为:

色泽=光亮,根蒂=坚硬,响声=清亮

如果记录到.csv文件中,这个文件的结构可以记为: fruit[100000][3] ,这样一个二维数组,行数为10万,列数为3(因为有3个特征)。


示例(instance)

每条记录是关于一个事件或对象的描述,也称为样本,比如以上其中一条记录

色泽=光亮,根蒂=坚硬,响声=清亮

这个看做是一个实例


属性(attribute)

反映事件或对象在某方面的表现或性质的事项,例如色泽,根蒂,响声等,又称为特征(feature)


属性上的取值,如青绿,浊响等,称为属性值(attribute value)。


样本空间(sample space)

又称为属性空间(attribute space),或输入空间。它可以理解为训练数据中实际出现的所有属性值构成的集合空间,如上文中提到的10万条西瓜记录,每条记录有3个属性取值,组成了一个fruit[100000][3] 的样本空间。和它有点类似的一个概念叫做假设空间(hypothetical space),它是理论上的所有可能属性值构成的集合空间。


如果我们在购买某个股票时假定根据两个主要特征:股票经纪公司等级和股票最近3个月的涨幅情况,进而判断是否购买某只股。假定股票经纪公司等级取值为4种:A等,B等,C等,还要考虑到一种特殊取值 *,即公司等级取ABC中哪个值这个股票我都要买(也就是说这个特征对于我是否买这只股是无关紧要的);股票最近3个月的涨幅情况取值为3种:涨,降,取值哪个都合适 *,那么根据这两个特征和特征取值,并且股票的标签y取值为买或不买,因此我们可以得到一个由12种类型的假设组成的假设空间,分别为:
1. A等   涨  

2. A等   降 

3. A等    *



4. B等   涨  

5. B等   降  

6. B等   *


7. C等    涨 

8. C等    降

9. C等   *


10. *   涨 

11. *   降

12. *   *


特征向量(feature vector)

假如将色泽,根蒂,敲声三个属性作为三个坐标轴x1, x2, x3,每个西瓜对应一个空间点(一个坐标向量),每个这种示例称为一个特征向量,记为

 (x1, x2, x3 )


维数(dimensionality)

每个示例包含的属性个数,如上文中提到的描述西瓜的3个特征色泽,根蒂,响声,这个10万行的数据集的维数是3,这是机器学习中需要理解的重要概念。


标记(label)

关于示例结果的信息,比如判断一个西瓜是好瓜,那么这个西瓜便拥有了标记示例,这个西瓜便成了样例(example)。一般用 Xi , yi 表示第 i 个样例,其中 yi 是示例 Xi 的标记


学习(learning)

从数据中学得模型的过程,又称为训练(training)。正如上文所示,10万条西瓜数据集,根据它的三个特征,和每条特征的标记,经过计算最后得到了一个 f,通过这个 f 我们能预测第1万零一个西瓜是否是好瓜,这个过程被称为学习。


训练数据 (training data)

训练过程中使用的数据,其中每个样本称为一个训练样本(training sample),训练样本组成的集合称为训练集(training set)。通过这些训练数据通过学习,最终得出一个f,也就是我们学到的模型。与之相对应的是测试数据,为了测试通过训练数据得到的f准确度能高不高,我们特意预留出一些数据用来专门测试用,这部分数据就被称为测试数据。


回归(regression)

如果预测的是连续值,例如预测西瓜的成熟度 ,它必然是个大于0的小数值,比如成熟度为0.9,0.75,抑或是根据房屋面积,使用年限两个特征预测某个房屋的价值,类似这种预测称为回归。回归有些不好理解,可以理解为拟合吧,根据已有数据集,得到一条曲线f,然后再来一个Xm,带到 f 中,得到ym 。


分类(classification)

如果我们要预测的是离散值,等于0,1,2,3等这类离散值,例如 好瓜,坏瓜,称此类学习任务为分类。如果分类的结果为两类,又称此分类为二分类,通常称其中一个为正类(positive class),另一个为反类(negative class)。它还有一个很奇怪的名字,叫逻辑回归,虽然是带着回归二字,实际是分类,注意此处。


聚类(clustering)

没有标记的记录集,并且我们还想学习这类数据集,比如想从里头挖出点有用的东西来。然后我们根据某些特征和算法将训练中的西瓜分成若干组,自动形成了几簇,这些簇可能对应一些潜在的概念,比如浅色瓜,深色瓜,本地瓜,这些概念我们都是事先不知道的。聚类的常用的算法自己查阅吧,资料有很多。


03

拿掉这个概念


说说监督(un-semi-supervised)

对机器学习的以上这3个分类,本来已经很全面了吗,不知道为什么还要出来几个概念,什么监督学习(supervised learning)和非监督学习(unsupervised learning),它们是对这3个分类的进一步二分类,好像没有多大意思,前者是带有标记信息的,很明显回归和分类属于这个,因为它们必须得有 y 支持才行;后者属于无标记信息的即没有 y 的学习任务,如让你在一堆数据集中挖金子,你根本不知道它有没有有价值的或者含有某种规律的信息,你有可能空手而归。


世上自然很少是非红即白的事情了,我们那10万条数据集,有的含有 y,有的缺失 y,此时,我们还想预测,怎么办,又有很多人基于这类数据集想出来了很多算法,并称这类问题为半监督学习任务。



04

总结

这是机器学习中不得不知的基本概念,以后的算法理论都是基于此展开的,所以深刻的理解它吧,在以后更深入的展开学习过程中,我们免不了再回过头来思考这些假定条件,它们是后面的支撑。


明天我们会用两个生动的例子阐述:

  • 什么是机器学习的泛化能力;

  • 什么是归纳偏好


请关注机器学习:不得不知的概念(2)



欢迎关注《算法channel》公众号


主要推送关于对算法的思考以及应用的消息。培养思维能力,注重过程,挖掘背后的原理,刨根问底。本着严谨和准确的态度,目标是撰写实用和启发性的文章,欢迎您的关注。







您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存